import java.rmi.registry.*;
import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;
import java.util.ArrayList;	


public class ServidorCaixa implements InterfaceCaixa  {

	public ArrayList<Conta> contas = new ArrayList<Conta>();	


	public ArrayList<Conta> getContas() throws RemoteException {
		return contas;
	}
	
	
	public void setContas(ArrayList<Conta> contas) throws RemoteException {
		this.contas = contas;
	}
	
	
	public void addConta(Conta conta) {
		
		this.contas.add(conta);
	}

	public void novaConta(int mesa, Garcom garcom){
		
		Conta auxConta = new Conta(mesa, garcom);
		this.contas.add(auxConta);		
	}

	public static void main (String[] args) {
		
		try {
			
			ServidorCaixa obj = new ServidorCaixa();
			InterfaceCaixa stub = (InterfaceCaixa) UnicastRemoteObject.exportObject(obj, 0);
		
			Registry registry = LocateRegistry.getRegistry();
			registry.bind("caixa", stub);
			System.err.println("Arrancando o Servidor...");			
			
		} catch (Exception e) {
			System.err.println("Servidor falhou!\n\n: " + e.toString());
			e.printStackTrace();
		}
			
	}
}
	
	
